# 导包
import logging.handlers

# 初始化日志
import config


def init_log():
    # 创建日志器
    logger = logging.getLogger()
    # 设置打印日志信息等级（DEBUG/INFO/WARNING/ERROR/CRITICAL）
    logger.setLevel(logging.DEBUG)

    # 创建处理器
    # 1，创建控制台处理器
    ls = logging.StreamHandler()
    # 2，创建文件处理器
    # 参数说明
    # （1）指定日志文件存放的路径及名称
    # （2）when 版本的时间单位，如 小时，分钟，天，半夜等
    # （3）interval 本分的时间间隔
    # （4）backipCount 指定保留旧日志文件的数量
    lf = logging.handlers.TimedRotatingFileHandler(config.BASE_PATH + "/log/log.log", when="midnight", interval=1,
                                                   backupCount=31)
    # 创建格式化器
    fmt = logging.Formatter("%(asctime)s %(lineno)d %(message)s")

    # 将格式化器绑定至处理器
    # 1，将格式化器绑定至控制台处理器
    ls.setFormatter(fmt)
    # 2，将格式化器绑定至文件处理器
    lf.setFormatter(fmt)

    # 将处理器绑定至日志器
    # 1，将控制台处理器绑定至日志器
    logger.addHandler(ls)
    # 2，将文件处理器绑定至日志器
    logger.addHandler(ls)
